halo 3 ending explained